openapi: 3.1.0 info: title: 7shifts Availability Companies API version: '2.0' description: 7shifts is a restaurant employee scheduling, time-tracking, and team management platform. The 7shifts API v2 is a REST API for managing companies, locations, departments, roles, users (employees), schedules, shifts, time punches, wages, time off, availability, sales receipts, forecasts, tasks, tip pools, and webhooks. Authentication uses Bearer access tokens for internal access or OAuth 2.0 client credentials for partner integrations. Endpoints documented here were confirmed from the 7shifts developer reference (developers.7shifts.com) and its llms.txt index. Most resources are scoped to a company via the /v2/company/{company_id} path prefix. Collection endpoints use cursor-based pagination via the cursor and limit query parameters. Date-based API versions are selected with the x-api-version header (YYYY-MM-DD). contact: name: 7shifts Developer Portal url: https://developers.7shifts.com/reference/introduction license: name: 7shifts API Terms url: https://www.7shifts.com/legal/terms-of-service servers: - url: https://api.7shifts.com description: 7shifts API production base URL tags: - name: Companies description: Company resources for 7shifts accounts. paths: /v2/companies: get: tags: - Companies operationId: listCompanies summary: List Companies parameters: - name: modified_since in: query required: false description: Return companies modified since the specified date (YYYY-MM-DD). schema: type: string - $ref: '#/components/parameters/ApiVersionHeader' - $ref: '#/components/parameters/CompanyGuidHeader' responses: '200': description: OK content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Company' meta: $ref: '#/components/schemas/CursorMeta' '401': description: Unauthorized '403': description: Forbidden '500': description: Server error security: - bearerAuth: [] /v2/companies/{company_id}: get: tags: - Companies operationId: retrieveCompany summary: Retrieve Company parameters: - $ref: '#/components/parameters/CompanyIdPath' - $ref: '#/components/parameters/ApiVersionHeader' responses: '200': description: OK content: application/json: schema: type: object properties: data: $ref: '#/components/schemas/Company' '403': description: Forbidden '404': description: Not found security: - bearerAuth: [] components: schemas: Company: title: Company type: object properties: id: type: integer format: int64 name: type: string country_code: type: string timezone: type: string active: type: boolean created: type: string format: date-time modified: type: string format: date-time CursorMeta: title: Cursor Meta type: object description: Cursor-based pagination metadata. properties: cursor: type: object properties: current: type: string next: type: string nullable: true prev: type: string nullable: true count: type: integer parameters: CompanyIdPath: name: company_id in: path required: true description: Company identifier. schema: type: integer format: int64 ApiVersionHeader: name: x-api-version in: header required: false description: 7shifts API version (YYYY-MM-DD). schema: type: string CompanyGuidHeader: name: x-company-guid in: header required: false description: Company GUID. schema: type: string format: uuid securitySchemes: bearerAuth: type: http scheme: bearer description: Access token obtained from /oauth2/token passed as a Bearer token. oauth2: type: oauth2 description: OAuth 2.0 with client_credentials, password, authorization_code, and refresh_token grant types. flows: clientCredentials: tokenUrl: https://api.7shifts.com/oauth2/token scopes: {}