openapi: 3.0.3 info: title: Revert Unified Connection CRM Companies API description: Revert is an open-source unified API for building product integrations. This specification describes the hosted REST surface at api.revert.dev, focused on the unified CRM category (contacts, leads, deals, companies, notes, tasks, events, users), the passthrough proxy, connection management, integration metadata, and webhooks. All CRM requests are authenticated with an `x-revert-api-token` (your Revert API key) and target a specific customer connection via `x-revert-t-id` (the tenant id captured when the customer linked their third-party tool through Revert's managed OAuth flow). Revert is AGPL-3.0 licensed and can be self-hosted. termsOfService: https://revert.dev contact: name: Revert url: https://revert.dev license: name: AGPL-3.0 url: https://www.gnu.org/licenses/agpl-3.0.en.html version: '1.0' servers: - url: https://api.revert.dev description: Revert hosted API security: - revertApiToken: [] tags: - name: CRM Companies paths: /crm/companies: get: tags: - CRM Companies operationId: getCompanies summary: List companies from the connected CRM. parameters: - $ref: '#/components/parameters/TenantId' - $ref: '#/components/parameters/Cursor' - $ref: '#/components/parameters/PageSize' responses: '200': description: A page of companies. content: application/json: schema: $ref: '#/components/schemas/UnifiedListResponse' post: tags: - CRM Companies operationId: createCompany summary: Create a company in the connected CRM. parameters: - $ref: '#/components/parameters/TenantId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Company' responses: '201': description: Company created. /crm/companies/{id}: get: tags: - CRM Companies operationId: getCompany summary: Get a single company by id. parameters: - $ref: '#/components/parameters/Id' - $ref: '#/components/parameters/TenantId' responses: '200': description: The company. patch: tags: - CRM Companies operationId: updateCompany summary: Update a company by id. parameters: - $ref: '#/components/parameters/Id' - $ref: '#/components/parameters/TenantId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Company' responses: '200': description: Company updated. /crm/companies/search: post: tags: - CRM Companies operationId: searchCompanies summary: Search companies in the connected CRM. parameters: - $ref: '#/components/parameters/TenantId' requestBody: required: true content: application/json: schema: type: object properties: searchCriteria: type: object responses: '200': description: Matching companies. components: parameters: Id: name: id in: path required: true description: The unified record id. schema: type: string Cursor: name: cursor in: query required: false description: Pagination cursor returned by a previous list response. schema: type: string PageSize: name: pageSize in: query required: false description: Number of records to return per page. schema: type: integer TenantId: name: x-revert-t-id in: header required: true description: The unique customer/tenant id used when the customer linked their account. schema: type: string schemas: Company: type: object properties: id: type: string name: type: string industry: type: string phone: type: string additional: type: object UnifiedListResponse: type: object properties: status: type: string example: ok next: type: string nullable: true description: Cursor for the next page, or null when there are no more records. previous: type: string nullable: true results: type: array items: type: object securitySchemes: revertApiToken: type: apiKey in: header name: x-revert-api-token description: Your Revert API key (private token used from your backend).