API Catalog

Visualize and analyze the API overlap between standards specifications and type systems within browsers.

Browser information was gathered by traversing the type system within the latest available version of the top browsers. Specification data was gathered by extracting Web IDL definitions from notable web specifications. Note that an API that is shown as detected does not necessarily mean it functions per specification; where the absence of an API under an interface could be due to the browser supporting an API in a different part of the prototype chain. This data is made publicly available to help each browser vendor work toward the goal of a more interoperable web platform. For more information, visit our FAQ page.

APIs by interface

API NameSpecificationsMicrosoft EdgeGoogle ChromeMozilla FirefoxApple Safari
WebGL2RenderingContext
ACTIVE_UNIFORM_BLOCKS  
ALREADY_SIGNALED  
ANY_SAMPLES_PASSED  
ANY_SAMPLES_PASSED_CONSERVATIVE  
beginQuery  
beginTransformFeedback  
bindBufferBase  
bindBufferRange  
bindSampler  
bindTransformFeedback  
bindVertexArray  
blitFramebuffer  
clearBufferfi  
clearBufferfv  
clearBufferiv  
clearBufferuiv  
clientWaitSync  
COLOR  
COLOR_ATTACHMENT1  
COLOR_ATTACHMENT10  
COLOR_ATTACHMENT11  
COLOR_ATTACHMENT12  
COLOR_ATTACHMENT13  
COLOR_ATTACHMENT14  
COLOR_ATTACHMENT15  
COLOR_ATTACHMENT2  
COLOR_ATTACHMENT3  
COLOR_ATTACHMENT4  
COLOR_ATTACHMENT5  
COLOR_ATTACHMENT6  
COLOR_ATTACHMENT7  
COLOR_ATTACHMENT8  
COLOR_ATTACHMENT9  
COMPARE_REF_TO_TEXTURE  
compressedTexImage3D  
compressedTexSubImage3D  
CONDITION_SATISFIED  
constructor  
COPY_READ_BUFFER  
COPY_READ_BUFFER_BINDING  
COPY_WRITE_BUFFER  
COPY_WRITE_BUFFER_BINDING  
copyBufferSubData  
copyTexSubImage3D  
createQuery  
createSampler  
createTransformFeedback  
createVertexArray  
CURRENT_QUERY  
deleteQuery  
deleteSampler  
deleteSync  
deleteTransformFeedback  
deleteVertexArray  
DEPTH  
DEPTH_COMPONENT24  
DEPTH_COMPONENT32F  
DEPTH24_STENCIL8  
DEPTH32F_STENCIL8  
DRAW_BUFFER0  
DRAW_BUFFER1  
DRAW_BUFFER10  
DRAW_BUFFER11  
DRAW_BUFFER12  
DRAW_BUFFER13  
DRAW_BUFFER14  
DRAW_BUFFER15  
DRAW_BUFFER2  
DRAW_BUFFER3  
DRAW_BUFFER4  
DRAW_BUFFER5  
DRAW_BUFFER6  
DRAW_BUFFER7  
DRAW_BUFFER8  
DRAW_BUFFER9  
DRAW_FRAMEBUFFER  
DRAW_FRAMEBUFFER_BINDING  
drawArraysInstanced  
drawBuffers  
drawElementsInstanced  
drawRangeElements  
DYNAMIC_COPY  
DYNAMIC_READ  
endQuery  
endTransformFeedback  
fenceSync  
FLOAT_32_UNSIGNED_INT_24_8_REV  
FLOAT_MAT2x3  
FLOAT_MAT2x4  
FLOAT_MAT3x2  
FLOAT_MAT3x4  
FLOAT_MAT4x2  
FLOAT_MAT4x3  
FRAGMENT_SHADER_DERIVATIVE_HINT  
FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE  
FRAMEBUFFER_ATTACHMENT_BLUE_SIZE  
FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING  
FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE  
FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE  
FRAMEBUFFER_ATTACHMENT_GREEN_SIZE  
FRAMEBUFFER_ATTACHMENT_RED_SIZE  
FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE  
FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER  
FRAMEBUFFER_DEFAULT  
FRAMEBUFFER_INCOMPLETE_MULTISAMPLE  
framebufferTextureLayer  
getActiveUniformBlockName  
getActiveUniformBlockParameter  
getActiveUniforms  
getBufferSubData  
getFragDataLocation  
getIndexedParameter  
getInternalformatParameter  
getQuery  
getQueryParameter  
getSamplerParameter  
getSyncParameter  
getTransformFeedbackVarying  
getUniformBlockIndex  
getUniformIndices  
HALF_FLOAT  
INT_2_10_10_10_REV  
INT_SAMPLER_2D  
INT_SAMPLER_2D_ARRAY  
INT_SAMPLER_3D  
INT_SAMPLER_CUBE  
INTERLEAVED_ATTRIBS  
INVALID_INDEX  
invalidateFramebuffer  
invalidateSubFramebuffer  
isQuery  
isSampler  
isSync  
isTransformFeedback  
isVertexArray  
length  
MAX  
MAX_3D_TEXTURE_SIZE  
MAX_ARRAY_TEXTURE_LAYERS  
MAX_CLIENT_WAIT_TIMEOUT_WEBGL  
MAX_COLOR_ATTACHMENTS  
MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS  
MAX_COMBINED_UNIFORM_BLOCKS  
MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS  
MAX_DRAW_BUFFERS  
MAX_ELEMENT_INDEX  
MAX_ELEMENTS_INDICES  
MAX_ELEMENTS_VERTICES  
MAX_FRAGMENT_INPUT_COMPONENTS  
MAX_FRAGMENT_UNIFORM_BLOCKS  
MAX_FRAGMENT_UNIFORM_COMPONENTS  
MAX_PROGRAM_TEXEL_OFFSET  
MAX_SAMPLES  
MAX_SERVER_WAIT_TIMEOUT  
MAX_TEXTURE_LOD_BIAS  
MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS  
MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS  
MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS  
MAX_UNIFORM_BLOCK_SIZE  
MAX_UNIFORM_BUFFER_BINDINGS  
MAX_VARYING_COMPONENTS  
MAX_VERTEX_OUTPUT_COMPONENTS  
MAX_VERTEX_UNIFORM_BLOCKS  
MAX_VERTEX_UNIFORM_COMPONENTS  
MIN  
MIN_PROGRAM_TEXEL_OFFSET  
name  
OBJECT_TYPE  
PACK_ROW_LENGTH  
PACK_SKIP_PIXELS  
PACK_SKIP_ROWS  
pauseTransformFeedback  
PIXEL_PACK_BUFFER  
PIXEL_PACK_BUFFER_BINDING  
PIXEL_UNPACK_BUFFER  
PIXEL_UNPACK_BUFFER_BINDING  
prototype  
QUERY_RESULT  
QUERY_RESULT_AVAILABLE  
R11F_G11F_B10F  
R16F  
R16I  
R16UI  
R32F  
R32I  
R32UI  
R8  
R8_SNORM  
R8I  
R8UI  
RASTERIZER_DISCARD  
READ_BUFFER  
READ_FRAMEBUFFER  
READ_FRAMEBUFFER_BINDING  
readBuffer  
RED  
RED_INTEGER  
RENDERBUFFER_SAMPLES  
renderbufferStorageMultisample  
resumeTransformFeedback  
RG  
RG_INTEGER  
RG16F  
RG16I  
RG16UI  
RG32F  
RG32I  
RG32UI  
RG8  
RG8_SNORM  
RG8I  
RG8UI  
RGB_INTEGER  
RGB10_A2  
RGB10_A2UI  
RGB16F  
RGB16I  
RGB16UI  
RGB32F  
RGB32I  
RGB32UI  
RGB8  
RGB8_SNORM  
RGB8I  
RGB8UI  
RGB9_E5  
RGBA_INTEGER  
RGBA16F  
RGBA16I  
RGBA16UI  
RGBA32F  
RGBA32I  
RGBA32UI  
RGBA8  
RGBA8_SNORM  
RGBA8I  
RGBA8UI  
SAMPLER_2D_ARRAY  
SAMPLER_2D_ARRAY_SHADOW  
SAMPLER_2D_SHADOW  
SAMPLER_3D  
SAMPLER_BINDING  
SAMPLER_CUBE_SHADOW  
samplerParameterf  
samplerParameteri  
SEPARATE_ATTRIBS  
SIGNALED  
SIGNED_NORMALIZED  
SRGB  
SRGB8  
SRGB8_ALPHA8  
STATIC_COPY  
STATIC_READ  
STENCIL  
STREAM_COPY  
STREAM_READ  
SYNC_CONDITION  
SYNC_FENCE  
SYNC_FLAGS  
SYNC_FLUSH_COMMANDS_BIT  
SYNC_GPU_COMMANDS_COMPLETE  
SYNC_STATUS  
texImage3D  
texStorage2D  
texStorage3D  
texSubImage3D  
TEXTURE_2D_ARRAY  
TEXTURE_3D  
TEXTURE_BASE_LEVEL  
TEXTURE_BINDING_2D_ARRAY  
TEXTURE_BINDING_3D  
TEXTURE_COMPARE_FUNC  
TEXTURE_COMPARE_MODE  
TEXTURE_IMMUTABLE_FORMAT  
TEXTURE_IMMUTABLE_LEVELS  
TEXTURE_MAX_LEVEL  
TEXTURE_MAX_LOD  
TEXTURE_MIN_LOD  
TEXTURE_WRAP_R  
TIMEOUT_EXPIRED  
TIMEOUT_IGNORED  
TRANSFORM_FEEDBACK  
TRANSFORM_FEEDBACK_ACTIVE  
TRANSFORM_FEEDBACK_BINDING  
TRANSFORM_FEEDBACK_BUFFER  
TRANSFORM_FEEDBACK_BUFFER_BINDING  
TRANSFORM_FEEDBACK_BUFFER_MODE  
TRANSFORM_FEEDBACK_BUFFER_SIZE  
TRANSFORM_FEEDBACK_BUFFER_START  
TRANSFORM_FEEDBACK_PAUSED  
TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN  
TRANSFORM_FEEDBACK_VARYINGS  
transformFeedbackVaryings  
UNIFORM_ARRAY_STRIDE  
UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES  
UNIFORM_BLOCK_ACTIVE_UNIFORMS  
UNIFORM_BLOCK_BINDING  
UNIFORM_BLOCK_DATA_SIZE  
UNIFORM_BLOCK_INDEX  
UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER  
UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER  
UNIFORM_BUFFER  
UNIFORM_BUFFER_BINDING  
UNIFORM_BUFFER_OFFSET_ALIGNMENT  
UNIFORM_BUFFER_SIZE  
UNIFORM_BUFFER_START  
UNIFORM_IS_ROW_MAJOR  
UNIFORM_MATRIX_STRIDE  
UNIFORM_OFFSET  
UNIFORM_SIZE  
UNIFORM_TYPE  
uniform1ui  
uniform1uiv  
uniform2ui  
uniform2uiv  
uniform3ui  
uniform3uiv  
uniform4ui  
uniform4uiv  
uniformBlockBinding  
uniformMatrix2x3fv  
uniformMatrix2x4fv  
uniformMatrix3x2fv  
uniformMatrix3x4fv  
uniformMatrix4x2fv  
uniformMatrix4x3fv  
UNPACK_IMAGE_HEIGHT  
UNPACK_ROW_LENGTH  
UNPACK_SKIP_IMAGES  
UNPACK_SKIP_PIXELS  
UNPACK_SKIP_ROWS  
UNSIGNALED  
UNSIGNED_INT_10F_11F_11F_REV  
UNSIGNED_INT_2_10_10_10_REV  
UNSIGNED_INT_24_8  
UNSIGNED_INT_5_9_9_9_REV  
UNSIGNED_INT_SAMPLER_2D  
UNSIGNED_INT_SAMPLER_2D_ARRAY  
UNSIGNED_INT_SAMPLER_3D  
UNSIGNED_INT_SAMPLER_CUBE  
UNSIGNED_INT_VEC2  
UNSIGNED_INT_VEC3  
UNSIGNED_INT_VEC4  
UNSIGNED_NORMALIZED  
VERTEX_ARRAY_BINDING  
VERTEX_ATTRIB_ARRAY_DIVISOR  
VERTEX_ATTRIB_ARRAY_INTEGER  
vertexAttribDivisor  
vertexAttribI4i  
vertexAttribI4iv  
vertexAttribI4ui  
vertexAttribI4uiv  
vertexAttribIPointer  
WAIT_FAILED  
waitSync  
WebGLQuery
constructor 
length 
name 
prototype 
WebGLSampler
constructor 
length 
name 
prototype 
WebGLSync
constructor 
length 
name 
prototype 
WebGLTransformFeedback
constructor 
length 
name 
prototype 
WebGLVertexArrayObject
constructor  
length  
name  
prototype