# Companies

Operations related to companies

## Get all Companies

> Returns a list of companies with pagination support.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies":{"get":{"operationId":"PublicApiCompanyController_getCompanies","summary":"Get all Companies","description":"Returns a list of companies with pagination support.","parameters":[{"name":"page","required":false,"in":"query","description":"Page number to retrieve.","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items per page.","schema":{"type":"number"}},{"name":"name","required":false,"in":"query","description":"Company name to filter companies by (partial match).","schema":{"type":"string"}},{"name":"domain","required":false,"in":"query","description":"Company domain to filter companies by (partial match).","schema":{"type":"string"}},{"name":"opportunityId","required":false,"in":"query","description":"Opportunity ID to filter companies by opportunity relationship.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompaniesResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompaniesResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiCompanyDto"}}},"required":["statusCode","count","error","data"]},"PublicApiCompanyDto":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the company"},"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"},"createdAt":{"format":"date-time","type":"string","description":"Creation date"},"updatedAt":{"format":"date-time","type":"string","description":"Last update date"}},"required":["id","name","createdAt","updatedAt"]}}}}
```

## Create Company

> Creates a new company.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies":{"post":{"operationId":"PublicApiCompanyController_createCompany","summary":"Create Company","description":"Creates a new company.","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiCreateCompanyDto":{"type":"object","properties":{"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"}},"required":["name","domain"]},"PublicApiCreateCompanyResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"$ref":"#/components/schemas/PublicApiCompanyDto"}},"required":["statusCode","count","error","data"]},"PublicApiCompanyDto":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the company"},"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"},"createdAt":{"format":"date-time","type":"string","description":"Creation date"},"updatedAt":{"format":"date-time","type":"string","description":"Last update date"}},"required":["id","name","createdAt","updatedAt"]}}}}
```

## Get Company Details tab payload

> Returns the same aggregate shown in the platform company Details tab: commercial state (sales moment), latest AI company status (current narrative, needs, objections), and the suggested-actions/signals bundle.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/details":{"get":{"operationId":"PublicApiCompanyController_getCompanyDetailsTab","summary":"Get Company Details tab payload","description":"Returns the same aggregate shown in the platform company Details tab: commercial state (sales moment), latest AI company status (current narrative, needs, objections), and the suggested-actions/signals bundle.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompanyDetailsTabResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompanyDetailsTabResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"$ref":"#/components/schemas/PublicApiCompanyDetailsTabDto"}},"required":["statusCode","count","error","data"]},"PublicApiCompanyDetailsTabDto":{"type":"object","properties":{"commercialState":{"nullable":true,"description":"Commercial “sales moment”; same JSON as company.commercial_state when present.","allOf":[{"$ref":"#/components/schemas/PublicApiCommercialStateDto"}]},"aiStatus":{"nullable":true,"description":"Latest AI company_status row (Current status, Needs, Objections).","allOf":[{"$ref":"#/components/schemas/PublicApiCompanyAiStatusDto"}]},"suggestedActions":{"nullable":true,"description":"Suggested actions + signal summaries from company.suggested_actions.","allOf":[{"$ref":"#/components/schemas/PublicApiCompanySuggestedActionsBundleDto"}]}}},"PublicApiCommercialStateDto":{"type":"object","properties":{"state":{"type":"string","enum":["exploration","active_evaluation","high_intent","blocked","risk","expansion","post_sale"]},"confidence":{"type":"number","description":"Internal confidence score 0-1"},"confidenceLevel":{"type":"string","enum":["low","medium","high"]},"whyNow":{"type":"string"},"subMotives":{"type":"array","items":{"type":"string"}},"recommendedAction":{"$ref":"#/components/schemas/PublicApiRecommendedActionDto"},"lastCalculatedAt":{"type":"string"},"stateChangedAt":{"type":"string"},"previousState":{"type":"string","enum":["exploration","active_evaluation","high_intent","blocked","risk","expansion","post_sale"]},"triggerSignals":{"type":"array","items":{"type":"string"}}},"required":["state","confidence","confidenceLevel","whyNow","subMotives","recommendedAction","lastCalculatedAt","triggerSignals"]},"PublicApiRecommendedActionDto":{"type":"object","properties":{"actionType":{"type":"string","enum":["next_step","send_case_study","call_decision_maker","address_objection","schedule_demo","send_proposal","follow_up","escalate","discovery_call","check_in","propose_expansion"]},"instruction":{"type":"string"},"suggestedMessage":{"type":"string"},"deadline":{"type":"string"}},"required":["actionType","instruction"]},"PublicApiCompanyAiStatusDto":{"type":"object","properties":{"id":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"},"state":{"$ref":"#/components/schemas/PublicApiCompanyStatusStateDto"}},"required":["id","createdAt","updatedAt","state"]},"PublicApiCompanyStatusStateDto":{"type":"object","properties":{"currentState":{"description":"Paragraphs shown as “Current status” in the UI (Markdown source segments).","type":"array","items":{"type":"string"}},"needs":{"type":"array","items":{"type":"string"}},"objections":{"type":"array","items":{"type":"string"}}},"required":["currentState","needs","objections"]},"PublicApiCompanySuggestedActionsBundleDto":{"type":"object","properties":{"suggestedActions":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiSuggestedActionDto"}},"signals":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiSignalSummaryItemDto"}},"lastUpdated":{"type":"string"},"metadata":{"$ref":"#/components/schemas/PublicApiCompanySuggestedActionsMetadataDto"}},"required":["suggestedActions","signals","lastUpdated","metadata"]},"PublicApiSuggestedActionDto":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"priority":{"type":"string","enum":["high","medium","low"]},"category":{"type":"string","enum":["positive","risk","neutral"]},"relatedSignals":{"type":"array","items":{"type":"string"}},"confidence":{"type":"number"},"relevanceScore":{"type":"number"},"firstDetectedAt":{"type":"string"},"lastDetectedAt":{"type":"string"},"occurrences":{"type":"number"},"activityIds":{"type":"array","items":{"type":"string"}},"activityNames":{"type":"array","items":{"type":"string"}},"activityTypes":{"type":"array","items":{"type":"string"}}},"required":["id","title","description","priority","category","relatedSignals","confidence","relevanceScore","firstDetectedAt","lastDetectedAt","occurrences","activityIds"]},"PublicApiSignalSummaryItemDto":{"type":"object","properties":{"signalTypeCode":{"type":"string"},"signalTypeTitle":{"type":"string"},"signalTypeDescription":{"type":"string"},"signalTypeCategory":{"type":"string","enum":["positive","risk","neutral"]},"value":{"type":"string"},"changeType":{"type":"string","nullable":true},"detectedAt":{"type":"string"},"activityId":{"type":"string"},"activityName":{"type":"string"},"activityType":{"type":"string"},"evidence":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiSignalEvidenceDto"}},"relevanceScore":{"type":"number"}},"required":["signalTypeCode","signalTypeTitle","signalTypeDescription","signalTypeCategory","value","detectedAt","activityId","evidence","relevanceScore"]},"PublicApiSignalEvidenceDto":{"type":"object","properties":{"text":{"type":"string"},"start":{"type":"number"},"end":{"type":"number"}},"required":["text","start","end"]},"PublicApiCompanySuggestedActionsMetadataDto":{"type":"object","properties":{"totalSignals":{"type":"number"},"signalsByCategory":{"$ref":"#/components/schemas/PublicApiSignalsByCategoryDto"},"decayHalfLifeDays":{"type":"number"}},"required":["totalSignals","signalsByCategory","decayHalfLifeDays"]},"PublicApiSignalsByCategoryDto":{"type":"object","properties":{"positive":{"type":"number"},"risk":{"type":"number"},"neutral":{"type":"number"}},"required":["positive","risk","neutral"]}}}}
```

## Get Company by ID

> Get a company by ID.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}":{"get":{"operationId":"PublicApiCompanyController_getCompanyById","summary":"Get Company by ID","description":"Get a company by ID.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to retrieve.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompanyByIdResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompanyByIdResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"$ref":"#/components/schemas/PublicApiCompanyDto"}},"required":["statusCode","count","error","data"]},"PublicApiCompanyDto":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the company"},"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"},"createdAt":{"format":"date-time","type":"string","description":"Creation date"},"updatedAt":{"format":"date-time","type":"string","description":"Last update date"}},"required":["id","name","createdAt","updatedAt"]}}}}
```

## Update Company

> Updates an existing company.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}":{"put":{"operationId":"PublicApiCompanyController_updateCompany","summary":"Update Company","description":"Updates an existing company.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to update.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiUpdateCompanyDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiUpdateCompanyResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiUpdateCompanyDto":{"type":"object","properties":{"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"}}},"PublicApiUpdateCompanyResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"$ref":"#/components/schemas/PublicApiCompanyDto"}},"required":["statusCode","count","error","data"]},"PublicApiCompanyDto":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the company"},"name":{"type":"string","description":"Name of the company"},"domain":{"type":"string","description":"Company domain"},"description":{"type":"string","description":"Company description"},"industry":{"type":"string","description":"Company industry"},"phone":{"type":"string","description":"Company phone number"},"email":{"type":"string","description":"Company email address"},"currency":{"type":"string","description":"Company currency"},"address":{"type":"string","description":"Company address"},"postalCode":{"type":"string","description":"Postal code"},"city":{"type":"string","description":"City"},"nEmployees":{"type":"number","description":"Number of employees"},"source":{"type":"string","description":"Company source"},"annualRevenue":{"type":"number","description":"Annual revenue"},"status":{"type":"string","description":"Company status"},"foundationYear":{"type":"number","description":"Foundation year"},"sellRating":{"type":"number","description":"Sell rating (0-100)"},"linkedinUrl":{"type":"string","description":"LinkedIn URL"},"parentCompanyId":{"type":"string","description":"Parent company ID"},"createdAt":{"format":"date-time","type":"string","description":"Creation date"},"updatedAt":{"format":"date-time","type":"string","description":"Last update date"}},"required":["id","name","createdAt","updatedAt"]}}}}
```

## Delete Company

> Deletes a company by ID.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}":{"delete":{"operationId":"PublicApiCompanyController_deleteCompany","summary":"Delete Company","description":"Deletes a company by ID.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to delete.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiDeleteCompanyResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiDeleteCompanyResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"boolean"}},"required":["statusCode","count","error","data"]}}}}
```

## Get Company Integrations

> Returns a list of integrations for a given company ID.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/integrations":{"get":{"operationId":"PublicApiCompanyController_getCompanyIntegrations","summary":"Get Company Integrations","description":"Returns a list of integrations for a given company ID.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to get integrations from.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompanyIntegrationsResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompanyIntegrationsResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"$ref":"#/components/schemas/PublicApiCompanyIntegrationsResponseDto"}},"required":["statusCode","count","error","data"]},"PublicApiCompanyIntegrationsResponseDto":{"type":"object","properties":{"companyId":{"type":"string","description":"Company ID"},"integrations":{"description":"List of company integrations","type":"array","items":{"$ref":"#/components/schemas/PublicApiCompanyIntegrationDto"}}},"required":["companyId","integrations"]},"PublicApiCompanyIntegrationDto":{"type":"object","properties":{"integrationType":{"type":"string","description":"Integration type"},"integrationName":{"type":"string","description":"Integration name"},"integrationId":{"type":"string","description":"ID of the record in the integration"}},"required":["integrationType","integrationName","integrationId"]}}}}
```

## Get Company Contacts

> Returns a list of contacts associated with a company.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/contacts":{"get":{"operationId":"PublicApiCompanyController_getCompanyContacts","summary":"Get Company Contacts","description":"Returns a list of contacts associated with a company.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to get contacts from.","schema":{"type":"string"}},{"name":"page","required":false,"in":"query","description":"Page number to retrieve.","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items per page.","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompanyContactsResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompanyContactsResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiCompanyContactDto"}}},"required":["statusCode","count","error","data"]},"PublicApiCompanyContactDto":{"type":"object","properties":{"contactId":{"type":"string","description":"Contact ID"},"contactFirstName":{"type":"string","description":"Contact first name"},"contactLastName":{"type":"string","description":"Contact last name"},"contactEmail":{"type":"string","description":"Contact email"},"contactTitlePosition":{"type":"string","description":"Contact title/position"}},"required":["contactId","contactEmail"]}}}}
```

## Create Company Contact Relationship

> Creates a relationship between a company and a contact.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/contacts":{"post":{"operationId":"PublicApiCompanyController_createCompanyContact","summary":"Create Company Contact Relationship","description":"Creates a relationship between a company and a contact.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyContactDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyContactResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiCreateCompanyContactDto":{"type":"object","properties":{"contactId":{"type":"string","description":"Contact ID"}},"required":["contactId"]},"PublicApiCreateCompanyContactResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"boolean"}},"required":["statusCode","count","error","data"]}}}}
```

## Get Company Opportunities

> Returns a list of opportunities associated with a company.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/opportunities":{"get":{"operationId":"PublicApiCompanyController_getCompanyOpportunities","summary":"Get Company Opportunities","description":"Returns a list of opportunities associated with a company.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to get opportunities from.","schema":{"type":"string"}},{"name":"page","required":false,"in":"query","description":"Page number to retrieve.","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items per page.","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetCompanyOpportunitiesResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetCompanyOpportunitiesResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiCompanyOpportunityDto"}}},"required":["statusCode","count","error","data"]},"PublicApiCompanyOpportunityDto":{"type":"object","properties":{"opportunityId":{"type":"string","description":"Opportunity ID"},"opportunityName":{"type":"string","description":"Opportunity name"},"opportunityAmount":{"type":"number","description":"Opportunity amount"},"opportunityStatus":{"type":"string","description":"Opportunity status"}},"required":["opportunityId","opportunityName"]}}}}
```

## Create Company Opportunity Relationship

> Creates a relationship between a company and an opportunity.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/opportunities":{"post":{"operationId":"PublicApiCompanyController_createCompanyOpportunity","summary":"Create Company Opportunity Relationship","description":"Creates a relationship between a company and an opportunity.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyOpportunityDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiCreateCompanyOpportunityResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiCreateCompanyOpportunityDto":{"type":"object","properties":{"opportunityId":{"type":"string","description":"Opportunity ID"}},"required":["opportunityId"]},"PublicApiCreateCompanyOpportunityResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"boolean"}},"required":["statusCode","count","error","data"]}}}}
```

## Get Company Meetings

> Returns meetings linked to the company (via meeting-company relations).

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/meetings":{"get":{"operationId":"PublicApiCompanyController_getCompanyMeetings","summary":"Get Company Meetings","description":"Returns meetings linked to the company (via meeting-company relations).","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID to list meetings for.","schema":{"type":"string"}},{"name":"page","required":false,"in":"query","description":"Page number to retrieve.","schema":{"type":"number"}},{"name":"limit","required":false,"in":"query","description":"Number of items per page.","schema":{"type":"number"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiGetMeetingsResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiGetMeetingsResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"array","items":{"$ref":"#/components/schemas/PublicApiMeetingDto"}}},"required":["statusCode","count","error","data"]},"PublicApiMeetingDto":{"type":"object","properties":{"meetingId":{"type":"string","description":"Unique identifier for the meeting"},"status":{"type":"string","enum":["scheduled","processing","completed"],"description":"Current status of the meeting"},"name":{"type":"string","description":"Name or title of the meeting"},"startDateTime":{"format":"date-time","type":"string","description":"Date and time when the meeting is scheduled to start"},"endDateTime":{"format":"date-time","type":"string","description":"Date and time when the meeting ended "},"duration":{"type":"number","description":"Duration of the meeting in seconds"},"description":{"type":"string","description":"Detailed description of the meeting"},"mediaType":{"type":"string","enum":["videocall","presential","phonecall"],"description":"Media type of the meeting"},"language":{"type":"string","description":"Language of the meeting in ISO 639-1 format"},"thumbnailUrl":{"type":"string","description":"URL of the meeting thumbnail image"},"meetingType":{"description":"Meeting type associated with this meeting ","allOf":[{"$ref":"#/components/schemas/PublicApiMeetingTypeDto"}]},"aiScore":{"type":"number","description":"AI score or rating of the meeting "},"url":{"type":"string","description":"URL of the meeting"},"calendarEventId":{"type":"string","description":"Unique identifier of the calendar event, if the meeting is associated with a calendar event"}},"required":["meetingId","status","name","startDateTime","url"]},"PublicApiMeetingTypeDto":{"type":"object","properties":{"id":{"type":"string","description":"Unique identifier for the meeting type"},"name":{"type":"string","description":"Descriptive name of the meeting type"}},"required":["id","name"]}}}}
```

## Delete Company Contact Relationship

> Deletes a relationship between a company and a contact.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/contacts/{contactId}":{"delete":{"operationId":"PublicApiCompanyController_deleteCompanyContact","summary":"Delete Company Contact Relationship","description":"Deletes a relationship between a company and a contact.","parameters":[{"name":"id","required":true,"in":"path","description":"Company ID.","schema":{"type":"string"}},{"name":"contactId","required":true,"in":"path","description":"Contact ID.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiDeleteCompanyContactResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiDeleteCompanyContactResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"boolean"}},"required":["statusCode","count","error","data"]}}}}
```

## Delete Company Opportunity Relationship

> Deletes a relationship between a company and an opportunity.

```json
{"openapi":"3.0.0","info":{"title":"Salescaling API","version":"1.0"},"tags":[{"name":"Companies","description":"Operations related to companies"}],"servers":[{"url":"https://api.salescaling.com","description":"Base API URL"}],"security":[{},{"bearer":[]}],"paths":{"/api/v1/companies/{id}/opportunities/{opportunityId}":{"delete":{"operationId":"PublicApiCompanyController_deleteCompanyOpportunity","summary":"Delete Company Opportunity Relationship","description":"Deletes a relationship between a company and an opportunity.","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"opportunityId","required":true,"in":"path","description":"Opportunity ID.","schema":{"type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PublicApiDeleteCompanyOpportunityResponseDto"}}}},"401":{"description":"Unauthorized - missing or invalid API key or Bearer token"}},"tags":["Companies"]}}},"components":{"schemas":{"PublicApiDeleteCompanyOpportunityResponseDto":{"type":"object","properties":{"statusCode":{"type":"number","default":200},"count":{"type":"number"},"error":{"type":"string","nullable":true},"data":{"type":"boolean"}},"required":["statusCode","count","error","data"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.salescaling.com/api/companies.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
